#pragma once
#include "ASN1Encoded.h"
#include "ASN1Sequence.h"

#include <osrng.h>
#include <rsa.h>
#include <base64.h>
#include <hex.h>     // Hex Encoder/Decoder

#define RSAKEYSIZE 1024

std::string Vector2HexStr(std::vector<byte>& v);
std::string Vector2B64Str(std::vector<byte>& v);

void GetKeys(AppliedCryptography::ASN1Encoded& asn1PrivateKey, AppliedCryptography::ASN1Encoded& asn1PublicKey);
void CopyKeyBytes(CryptoPP::RSAFunction& key, AppliedCryptography::ASN1Encoded& dest, bool fPublicKey);
